Techniques to manage power based on motion detection

ABSTRACT

Techniques to manage power based on motion detection are described. For example, a mobile computing device may include a radio module having a communications failure event detector operative to detect a communications failure event, a motion detector operative to detect motion, and a processor coupled to the radio module and the motion detector. The processor operative to execute a scan control module to determine the mobile computing device is moving or stationary, and control scanning operations by the radio module in accordance with the determination. Other embodiments are described and claimed.

BACKGROUND

Mobile computing devices, such as smart phones, may provide variousprocessing capabilities. For example, mobile devices may providepersonal digital assistant (PDA) features, including word processing,spreadsheets, synchronization of information (e.g., e-mail) with adesktop computer, and so forth.

In addition, such devices may have wireless communications capabilities.More particularly, mobile devices may employ various communicationstechnologies to provide features, such as mobile telephony, mobilee-mail access, web browsing, and content (e.g., video and radio)reception. Exemplary wireless communications technologies includecellular, satellite, and mobile data networking technologies.

Providing both processing and communications capabilities in a singledevice produces exceptional power management issues for smart phones,particularly as form factors for smart phones continue to decrease. As aresult, battery life for a smart phone may be substantially shortened.This may force frequent recharging operations, thereby impairing theconvenience of such devices. Consequently, improved power managementtechniques are desired.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 illustrates one embodiment of a communications system.

FIG. 2 illustrates one embodiment of first logic diagram.

FIG. 3A illustrates one embodiment of a second logic diagram.

FIG. 3B illustrates one embodiment of a third logic diagram.

FIG. 4 illustrates one embodiment of a mobile computing device.

DETAILED DESCRIPTION

Various embodiments may be generally directed to power managementtechniques for a mobile computing device, such as a smart phone. Someembodiments may be particularly directed to power management techniquesfor a mobile computing device based on detected motion for the mobilecomputing device.

In one embodiment, for example, a mobile computing device may include aradio module arranged to provide voice communications capabilitiesand/or data communications capabilities for the mobile computing device.The radio module may include a communications failure event detectoroperative to detect a communications failure event for the radio module.One example of a communications failure event may include withoutlimitation when a radio module detects that a received signal strengthindication (RSSI) for one or more radio signals are below a certainthreshold value. The mobile computing device may also include a motiondetector operative to detect motion for the mobile computing device. Themobile computing device may further include a processor coupled to theradio module and the motion detector. The processor may be operative toexecute a scan control module to determine whether the mobile computingdevice is moving or stationary. This may be accomplished, for example,by receiving an appropriate signal from the motion detector. The scancontrol module may control scanning operations performed by the radiomodule in accordance with the movement determination. For example, thescan control module may send control directives to reduce or suspendscanning operations when the mobile computing device is stationary, andinitiate or resume scanning operations when the mobile computing deviceis moving. Other embodiments are described and claimed.

Controlling scanning operations based on movement of the mobilecomputing device may provide several advantages. For example, a radiomodule typically scans for radio signals on a continuous or periodicbasis for a number of different reasons, such as to receive telephonecalls, initiate telephone calls, improve call quality, perform hand-offoperations, and so forth. Such scanning operations draw a significantamount of power from a power supply (e.g., a battery) for the mobilecomputing device. The power supply has limited amounts of power, andefficient use of the power supply provides various operationaladvantages. The radio module, however, typically performs scanningoperations regardless of whether there are any wireless resources withincommunication range, which unnecessarily draws power from the powersupply. This condition is particularly unnecessary whenever the mobilecomputing device is stationary in an area with little or no wirelesscoverage, since there is little likelihood of the radio module enteringan area with any active radio signals. This may unnecessarily draw powerfrom the power supply, thereby reducing battery life.

Various embodiments may comprise one or more elements. An element maycomprise any structure arranged to perform certain operations. Eachelement may be implemented as hardware, software, or any combinationthereof, as desired for a given set of design parameters or performanceconstraints. Although an embodiment may be described with a limitednumber of elements in a certain topology by way of example, theembodiment may include other combinations of elements in alternatearrangements as desired for a given implementation. It is worthy to notethat any reference to “one embodiment” or “an embodiment” means that aparticular feature, structure, or characteristic described in connectionwith the embodiment is included in at least one embodiment. Theappearances of the phrase “in one embodiment” in various places in thespecification are not necessarily all referring to the same embodiment.

FIG. 1 illustrates one embodiment of an apparatus that may communicateacross different types of wireless links. In particular, FIG. 1 shows acommunications system 100 comprising various representative elements,including a mobile computing device 110 capable of communicating viaradio signals 120-1-m with one or more wireless resources 130-1-n. Themobile computing device 110 may include by way of example and notlimitation a processor 102, a memory 104, a scan control module 105, aradio module 106, a motion detector 108, and an antenna 112. The radiomodule 106 may further include a communications failure event (CFE)detector 107. These elements or portions of these elements may beimplemented in hardware, software, firmware, or in any combinationthereof. The embodiments are not limited to these depicted elements.

The mobile computing device 110 may be generally configured to supportor provide cellular voice communication, wireless data communication andcomputing capabilities. The mobile computing device 110 may beimplemented as a combination handheld computer and mobile telephone,sometimes referred to as a smart phone. Examples of smart phonesinclude, for example, Palm® products such as Palm® Treo™ smart phones.Although some embodiments may be described with the mobile computingdevice 110 implemented as a smart phone by way of example, it may beappreciated that the embodiments are not limited in this context. Forexample, the mobile computing device 110 may comprise, or be implementedas, any type of wireless device, mobile station, or portable computingdevice with a self-contained power source (e.g., battery) such as alaptop computer, ultra-laptop computer, personal digital assistant(PDA), cellular telephone, combination cellular telephone/PDA, mobileunit, subscriber station, user terminal, portable computer, handheldcomputer, palmtop computer, wearable computer, media player, pager,messaging device, data communication device, and so forth. Additionaldetails for a mobile computing device may be described in more detailwith reference to FIG. 4.

The processor 102 may comprise a general purpose processor or anapplication specific processor arranged to provide general or specificcomputing capabilities for the communications system 100. For example,the processor 102 may perform operations associated with higher layerprotocols and applications. For instance, the processor 102 may beimplemented as a host processor to provide various user applications,such as telephony, text messaging, e-mail, web browsing, wordprocessing, video signal display, and so forth. In addition, theprocessor 102 may provide one or more functional utilities that areavailable to various protocols, operations, and/or applications.Examples of such utilities include operating systems, device drivers,user interface functionality, and so forth.

The memory 104 may comprise computer-readable media such as volatile ornon-volatile memory units arranged to store programs and data forexecution by the processor 102. As depicted in FIG. 1, the memory 104may store a scan control module 105 in the form of executable programinstructions, code or data. The processor 102 may retrieve and executethe program instructions, code or data from the memory 104 to control orprovide scanning operations for the mobile computing device 110.Although the scan control module 105 is shown as part of the memory 104for execution by the processor 102, it may be appreciated that the scancontrol module 105 may be stored and executed by other memory andprocessing resources available to the mobile computing device 110, suchas a radio processor and accompanying memory implemented by the radiomodule 106. Further, although the scan control module 105 is depicted assoftware executed by a processor, it may be appreciated that theoperations for the scan control module 105 may be implemented inhardware as well using one or more integrated circuits, for example. Theembodiments are not limited in this context.

The radio module 106 may comprise various radio elements, including aradio processor, one or more transceivers, amplifiers, filters,switches, and so forth. The radio module 106 may communicate with remotedevices across different types of wireless links utilizing variouscommunications techniques. For example, the radio module 106 maycommunicate across wireless links provided by one or more cellularradiotelephone systems. Examples of cellular radiotelephone systems mayinclude Code Division Multiple Access (CDMA) systems, GSM systems, NorthAmerican Digital Cellular (NADC) systems, Time Division Multiple Access(TDMA) systems, Extended-TDMA (E-TDMA) systems, Narrowband AdvancedMobile Phone Service (NAMPS) systems, third generation (3G) systems suchas Wide-band CDMA (WCDMA), CDMA-2000, Universal Mobile Telephone System(UMTS) systems, and so forth. The radio module 106 (or a second radiomodule) may also communicate across data networking links provided byone or more cellular radiotelephone systems. Examples of cellularradiotelephone systems offering data communications services may includeGSM with General Packet Radio Service (GPRS) systems (GSM/GPRS),CDMA/1xRTT systems, Enhanced Data Rates for Global Evolution (EDGE)systems, Evolution Data Only or Evolution Data Optimized (EV-DO)systems, Evolution For Data and Voice (EV-DV) systems, High SpeedDownlink Packet Access (HSDPA) systems, High Speed Uplink Packet Access(HSUPA), and so forth. The embodiments, however, are not limited tothese examples.

The radio module 106 may additionally or alternatively communicateacross various non-cellular communications links. The radio module 106may be arranged to provide voice and/or data communicationsfunctionality in accordance with different types of wireless networksystems or protocols. Examples of suitable wireless network systemsoffering data communication services may include the Institute ofElectrical and Electronics Engineers (IEEE) 802.xx series of protocols,such as the IEEE 802.11a/b/g/n series of standard protocols and variants(also referred to as “WiFi”), the IEEE 802.16 series of standardprotocols and variants (also referred to as “WiMAX”), the IEEE 802.20series of standard protocols and variants, and so forth. The mobilecomputing device 400 may also utilize different types of shorter rangewireless systems, such as a Bluetooth system operating in accordancewith the Bluetooth Special Interest Group (SIG) series of protocols,including Bluetooth Specification versions v1.0, v1.1, v1.2, v1.0, v2.0with Enhanced Data Rate (EDR), as well as one or more BluetoothProfiles, and so forth. Other examples may include systems usinginfrared techniques or near-field communication techniques andprotocols, such as electromagnetic induction (EMI) techniques. Anexample of EMI techniques may include passive or active radio-frequencyidentification (RFID) protocols and devices.

It may be appreciated that the radio module 106 may utilize differentcommunications elements (e.g., radio processors, transceivers, etc.) toimplement different communications techniques. Furthermore, the radiomodule 106 may support multiple communications techniques byimplementing multiple sets of corresponding radio equipment. Forexample, the radio module 106 may support GSM communications using afirst transceiver, IEEE 802.xx (e.g., 802.11) communications using asecond transceiver, Bluetooth communications using a third transceiver,and so forth. The embodiments are not limited in this context.

The radio module 106 may be arranged to periodically or continuouslyscan wireless shared media, such as one or more portions of theradio-frequency (RF) spectrum, for the various radios implemented by theradio module 106. The radio module 106 may implement a scanningalgorithm to perform various scanning operations for radio energy. Radioenergy may refer to RF energy used by a radio or wireless transceiverfor communicating information, rather than spurious energy received fromvarious electronic devices, such as a microwave, monitor, television,and so forth. For example, the radio module 106 may measure a receivedradio signal strength, received signal strength (RSS) or received signalstrength indication (RSSI) from nearby wireless resources (collectivelyreferred to herein as “RSSI”). An RSSI is typically a measurement of thepower present in a received radio signal in arbitrary units. The RSSImay provide an indication of how much information may be communicatedbetween devices. Typically a lower RSSI implies lower information ratesor quality, while a higher RSSI implies higher information rates orquality.

The scanning operations may include scanning for radio energy of a givenRSSI in the appropriate bands or sub-bands of the RF spectrum allocatedto the one or more transceivers or radios implemented by the radiomodule 106. For example, the radio module 106 may scan for various radiosignals 120-1-m received from various wireless resources 130-1-n. Thewireless resources 130-1-n may utilize a radio module implementing thesame or similar communication techniques as implemented for the radiomodule 106. The radio module 106 may perform the scanning operationsusing a scan list to scan various sets of frequencies. The radio module106 may perform scanning operations for any number of reasons, such asestablishing, managing or terminating a voice communication session or adata communication session, performing hand-off operations when themobile computing device 110 is moving between wireless resources (e.g.,130-1, 130-2), switching communication channels for the same wirelessresource (e.g., 130-1) due to bandwidth or quality issues, and so forth.

The motion detector 108 may be arranged to detect motion or absence ofmotion for the mobile computing device 110. The motion detector 108 maycomprise or be implemented using any particular motion detection deviceor technique, such as an accelerometer, a gyroscope, a globalpositioning system, a network enhanced global positioning system, a basestation proximity system, a triangulation system, a time differencesystem, a camera, a proximity sensor, and so forth. The embodiments arenot limited in this context.

In general operation, the mobile computing device 110 may providevarious communications and computing resources for an operator or user.For example, the radio module 106 may be operative to continuously orperiodically scan for radio signals from one or more wireless resources,such as the radio signals 120-1, 120-2 from the respective wirelessresources 130-1, 130-2. The radio module 106 may perform such scanningoperations in anticipation of the mobile computing device 110 initiatingor receiving a voice communication (e.g., telephone call) or a datacommunication (e.g., text message, instant message). The radio module106 may perform such scanning operations during a voice communication ordata communication session as well, such as when anticipating a hand-offbetween different sets of cellular radiotelephone infrastructureequipment (e.g., base stations).

In some cases, the mobile computing device 110 may experience acommunications failure event. In one embodiment, for example, the radiomodule 106 may include a CFE detector 107 arranged to monitor and detectfor one or more types of communications failure events. A communicationsfailure event may refer to any condition or event that prevents themobile computing device 110 from not being capable of communicating withanother device over a wireless channel. Some examples of acommunications failure event may include without limitation a RSSIfailure event, a timeout event, an acquisition failure event, a decodingerror event, and so forth. A communications failure event may occur forany number of reasons, such as when the mobile computing device 110 doesnot have access to any wireless resources, is outside the effectivecommunication range of the wireless resources 130-1-n, temporary orpermanent equipment failure, significant radio interference (e.g.,fading, multipath, signal attenuation, channel impairments, signaldelay, signal phase shift, signal distortion, signal noise, etc.), andso forth. The specific number and type of defined communications failureevents may vary according to a given implementation.

In one embodiment, for example, the radio module 106 may include a CFEdetector 107 arranged to monitor and detect for a communications failureevent such as a RSSI failure event. The RSSI failure event may comprisean event where an RSSI is below an RSSI threshold value. In oneembodiment, the radio module 106 may be operative to detect when a RSSIfor one or more of the radio signals 120-1-m as transmitted from thewireless resources 130-1-n are below a certain threshold value, such asan RSSI threshold value. For example, the radio module 106 may measure aRSSI from nearby wireless resources. When the RSSI is below a certainRSSI threshold value, the mobile computing device 110 may experiencereduced communication capabilities, and in some cases, may be unable tocommunicate any information with the wireless resources 130-1-n. Thelatter case may sometimes be referred to as a “lost coverage” or a “nocoverage” condition. When the radio module 106 detects the RSSI is belowa certain RSSI threshold value, the radio module 106 may output a signalindicating a RSSI failure event has occurred.

It may be appreciated that the particular RSSI threshold value may varyas desired for a given implementation, depending on such factors as thetype of information to communicate, the application communicating theinformation, the amount of information to communicate, the sensitivityof the radio module 106, whether one or more antennas are used, anantenna diversity technique, available power for the radio module 106,and so forth. The embodiments are not limited in this context.

In one embodiment, for example, the radio module 106 may include a CFEdetector 107 arranged to monitor and detect for a communications failureevent such as a timeout event. A timeout event may comprise an eventwhere the radio module 106 does not receive one or more responses totransmitted requests within a defined time period. In one embodiment,the radio module 106 may implement one or more timers, or use existingtimers, and begin timing operations whenever information is transmittedfrom the radio module 106 to another wireless device. The transmittedinformation could be limited to information that typically requires someform of response or acknowledgement from the receiving wireless device.Whenever the timers indicate that an expected response has not beenreceived within the defined time period, the radio module 106 may outputa signal indicating a timeout event has occurred.

In one embodiment, for example, the radio module 106 may include a CFEdetector 107 arranged to monitor and detect for a communications failureevent such as an acquisition failure event. An acquisition failure eventmay comprise an event where the radio module 106 does not acquire acommunications channel (e.g., voice or data) within a defined timeperiod. The radio module 106 may attempt to locate and acquire a voicecommunications channel and/or a data communications channel. Wheneverthe timers indicate that a communications channel has not been acquiredwithin the defined time period, the radio module 106 may output a signalindicating an acquisition failure event has occurred.

In one embodiment, for example, the radio module 106 may include a CFEdetector 107 arranged to monitor and detect for a communications failureevent such as a decoding error event. A decoding error event maycomprise an event where the radio module 106 is not capable of properlydecoding information received from another wireless device, such as abeacon signal. This may occur for a number of reasons, such as channelimpairments distorting the received signal so that it may not be decodedand recognized by the mobile computing device 110. Whenever the radiomodule 106 fails to decode information received from another wirelessdevice, or fails to decode received information within a defined timeperiod, the radio module 106 may output a signal indicating a decodingerror event has occurred.

In cases where the mobile computing device 110 experiences acommunications failure event, the mobile computing device 110 may stillspend a significant amount of time in an active state or an idle stateduring which the radio module 106 continuously monitors the radioenvironment by scanning for wireless resources 130-1-n that may bewithin range of the mobile computing device 110. For example, a usermight leave the mobile computing device 110 in an idle state when athome to receive telephone calls or email messages. The radio module 106may continuously scan various operating frequencies for the varioustransceivers implemented for the radio module 106, even though the radioenvironment is unlikely to change significantly when the mobilecomputing device 110 is stationary, or even when moving within the localconfines of a residence or home. This consumes significant amounts ofpower from the power supply that has finite energy. This problem may beexacerbated whenever the mobile computing device 110 is in an area withweak coverage or no coverage, or located at a common boundary edge fortwo or more wireless resources 130-1-n. In the latter case, the radiomodule 106 may cycle through channel measurements for all the wirelessresources 130-1-n within communication range of the radio module 106,such as when attempting to determine whether a wireless resource has astronger signal in anticipation of performing hand-off operations. Giventhe time interval a user typically sleeps, such scanning activity maycause the mobile computing device 110 to drain the battery completely bythe time the user awakes.

To solve these and other problems, the scan control module 105 maycontrol activities for one or more elements of the mobile computingdevice 110. This may involve sending one or more directives to theappropriate elements. To provide such control, the scan control module105 may include various logic, routines and/or circuitry that operate oninformation received from other elements. In one embodiment, forexample, the scan control module 105 may control operations of the radiomodule 106 based on inputs received from the radio module 106 and themotion detector 108. The scan control module 105 may output variouscontrol directives to the radio module 106 to control various scanningoperations for the radio module 106 based on the received inputs. Inembodiments, one or more processors may execute such logic and routines.

In some embodiments, one or more interfaces may employ varioustechniques to exchange information between the elements of the mobilecomputing device 110. For example, an interface may activate and/ordetect activated signal lines. Such signal lines may be dedicated toparticular signals. Alternatively, an interface may generate datamessages to be transmitted across various connections. Exemplaryconnections may include a parallel interface, a serial interface, a businterface, and/or a data network.

In various embodiments, the CFE detector 107 of the radio module 106 maybe operative to detect a communications failure event. Thecommunications failure event may comprise, for example, a RSSI failureevent, a timeout event, an acquisition failure event, a decoding errorevent, or some other communications failure event. The CFE detector 107may output an appropriate signal or message to the scan control module105 indicating the communications failure event. The motion detector 108may be operative to detect motion for the mobile computing device 110,and output an appropriate signal or message to the scan control module105. When a communications failure event is detected, and the mobilecomputing device 110 is stationary, the scan control module 105 mayissue a control directive to the radio module 106 to reduce or suspendscanning operations for the radio module 106. When the mobile computingdevice 110 is moving, the scan control module 105 may issue a controldirective to the radio module 106 to initiate or resume scanningoperations for the radio module 106. When the radio module 106 does notdetect a communications failure event, the scan control module 105 mayrefrain from issuing any control directives and allow the radio module106 to perform normal scanning operations regardless of whether themobile computing device 110 is moving or stationary.

In one embodiment, the scan control module 105 may be operative todetermine the mobile computing device 110 is stationary for a first timeperiod, and issue a control directive to reduce a scan rate used by theradio module 106 for the scanning operations. The first time period maycomprise a user configurable or default time period representing anydesired time interval, such as x seconds. The first time period may beused to control sensitivity for the scan control module 105. The firsttime period could be set for a time interval that allows for ordinaryand expected stationary periods for the mobile computing device 110,such as the duration of an average traffic signal for a traffic stop.This may avoid the scan control module 105 from repeatedly issuingcontrol directives to reduce, suspend and resume scanning operations fornormal operating environments, thereby causing the radio module 106 tocontinuously cycle through different operating modes that mightunnecessarily consume power from the power supply for the mobilecomputing device 110. The exact value set for the first time periodshould balance power conservation goals with other design parameters,such as ensuring priority communications are received by the mobilecomputing device 110, and may vary with a given implementation. Forexample, if the user expects an important telephone call, the user mayset the first time period for a longer period of time to increase theprobability of receiving the incoming call.

Once the mobile computing device 110 is stationary for the first timeperiod, the scan control module 105 may issue a control directive toreduce a scan rate used by the radio module 106 for the scanningoperations. This may reduce power consumption from the power supply forthe mobile computing device 110. The scan rate may represent how oftenthe radio module 106 scans for the radio signals 120-1-m within a giventime period. For example, the radio module 106 may normally wake up fromidle mode to active mode every 5 minutes, perform scanning operationsfor 1 minute, and revert to idle mode once scanning operations arecompleted without detecting any radio signals. The scan control module105 may issue a control directive to reduce a scan rate and/or scaninterval for the radio module 106, such as from 1 minute out of every 5minutes to 30 seconds out of every 5 minutes, for example.

In one embodiment, the scan control module 105 may be operative todetermine the mobile computing device 110 is stationary for a secondtime period, and issue a control directive to suspend or terminatescanning operations by the radio module 106. This may further reducepower consumption from the power supply for the mobile computing device110. As with the first time period, the second time period may comprisea user configurable or default time period representing any desired timeinterval, such as y seconds. The second time period may be used tocontrol sensitivity for the scan control module 105 beyond the firsttime period, thereby allowing different scanning modes based onstationary time intervals. The second time period may account for a timeinterval that safely assumes the mobile computing device 110 will remainstationary for sufficient time to justify the power saving features ofsuspending scanning operations of the radio module 106.

Once the radio module 106 suspends scanning operations, the scan controlmodule 105 may issue a control directive to resume scanning operationsbased on different criteria. For example, the scan control module 105may issue a suspend duration representing an amount of time the radiomodule 106 should not perform scanning operations, such as 8 hours. Thescan control module 105 may set a timer for the suspend duration, andsend a control directive to the radio module 106 to resume scanningoperations based on the timer. This may be desirable if the motiondetector 108 becomes inoperative or disabled. The scan control module105 may periodically wake up the radio module 106 as a safety measure.In another example, the scan control module 106 may not issue a suspendduration, but rather allow the radio module 106 to remain suspendedwhile the mobile computing device 110 remains stationary.

While the radio module 106 is suspended, the motion detector 108 maycontinue to monitor the mobile computing device 110 for any motion ormovement. To enhance power conservation, the type and arrangement forthe motion detector 108 should be selected to consume less energy thanthe radio module 106. When the motion detector 108 detects movement ofthe mobile computing device 110, the motion detector 108 may send asignal to the scan control module 105. The scan control module 105 mayreceive the signal from the motion detector 108, and send a controldirective to the radio module 106 to resume scanning for radio signalswhen the mobile computing device is moving.

The scan control module 105 may control scanning operations for theradio module 106 in accordance with different types of movement of themobile computing device 110. For example, the mobile computing device110 may have movement patterns that are different when in a pocket orbrief case while the operator is walking down the street versus drivingin an automobile. Consequently, the scan control module 105 may havelogic that resumes partial or full scanning operations based on the typeof detected movement. This may be accomplished using one or more motionparameters to control sensitivity of the detected movement for themobile computing device 110. Examples of various motion parameters mayinclude without limitation a speed parameter, a velocity parameter, adirection parameter, an altitude parameter, and so forth.

In one embodiment, the scan control module 105 may use a speedparameter. Speed is a scalar quantity with dimensions of distance andtime. Speed is the rate of motion, or equivalently the rate of change inposition, many times expressed as distance d traveled per unit of timet. The scan control module 105 may be arranged to send a controldirective to the radio module 106 to resume scanning for radio signalswhen the mobile computing device 110 is moving at a measured speed abovea threshold value speed. The speed parameter may be used to reflect theassumption that the radio module 106 should not resume partial or fullscanning operations until the mobile computing device 110 moves at aspeed equal to or greater than the average walking speed for apedestrian, the average driving speed for a driver, and so forth. Thismay prevent the scan control module 105 to issue a resume scanningsignal for the radio module 106 whenever the mobile computing device 110has spurious movement, such as when bumped on a night stand or whenmoved from one side of a room to another side of the same room. Rather,the movement should be of the type that would increase the probabilitythat the mobile computing device 110 may actually move within range ofone or more of the wireless resources 130-1-n.

In one embodiment, the scan control module 105 may use a velocityparameter. Velocity is a vector quantity with dimensions of speed anddirection. Velocity is defined as the rate of change of position. It isa vector physical quantity, and therefore both speed and direction arerequired to define it. The scan control module 105 may be arranged tosend a control directive to the radio module 106 to resume scanning forradio signals when the mobile computing device 110 is moving at ameasured velocity above a threshold value velocity. The velocityparameter may be used to reflect the assumption that the radio module106 should not resume partial or full scanning operations until themobile computing device moves at a velocity equal to or greater than theaverage velocity achieved while walking or driving. This may prevent thescan control module 105 to issue a resume scanning signal for the radiomodule 106 whenever the mobile computing device 110 has movement thatmight reach a minimum threshold value for a speed parameter but alwaysreturns to the original position, such as the up-and-down movement ofwhen an operator is walking on a treadmill, stair climber, ellipticaltrainer, or some other exercise equipment.

The quality of the movement of the mobile computing device 110 may alsobe augmented or enhanced using other elements implemented with themobile computing device 110. For example, the mobile computing devicemay include a separate GPS device (not shown separately). The motiondetector 108 may be used to determine movement of the mobile computingdevice 110, while the GPS device may be used to determine location forthe mobile computing device 110. The scan control module 105 may bearranged to issue a control directive to the radio module 106 to resumepartial or full scanning operations based on the movement and locationof the mobile computing device 110. This may reflect the assumption thatmovement within a structure such as a house or office does not meritresuming scanning operations, while movement outside of the house doesmerit resuming scanning operations. Alternatively, the granularity ofthe location information may be increased to a level to detect movementwithin a house or office. This may reflect the assumption that movementwithin a structure may affect the detected communications failure event(e.g., detected RSSI), such as inter-room or intra-room movement, andtherefore sensitivity of the scan control module 105 and the motiondetector 108 may be modified accordingly.

Operations for the above embodiments may be further described withreference to the following figures and accompanying examples. Some ofthe figures may include a logic diagram. Although such figures presentedherein may include a particular logic diagram, it can be appreciatedthat the logic diagram merely provides an example of how the generalfunctionality as described herein can be implemented. Further, the givenlogic diagram does not necessarily have to be executed in the orderpresented, unless otherwise indicated. In addition, the given logicdiagram may be implemented by a hardware element, a software elementexecuted by a processor, or any combination thereof. The embodiments arenot limited in this context.

FIG. 2 illustrates one embodiment of a logic diagram. In particular,FIG. 2 illustrates a logic diagram 200, which may be representative ofthe operations executed by one or more embodiments described herein. Asshown in the FIG. 2, the logic diagram 200 may detect a communicationsfailure event at block 202. The logic diagram 200 may determine a mobilecomputing device is moving or stationary at block 204. The logic diagram200 may control scanning operations for radio signals by a radio inaccordance with the determination at block 206. The embodiments are notlimited in this context.

In one embodiment, the logic diagram 200 may detect a communicationsfailure event at block 202. For example, the CFE detector 107 of theradio module 106 may continuously or periodically scan the radio signals120-1, 120-2 received from the wireless resources 130-1, 130-2. If oneor both of the radio signals 120-1, 120-2 fall below a certain RSSI,then the radio module 106 may output a signal to the scan control module105 indicating a RSSI failure event. Similarly, the radio module 106 maybe tuned to detect other communications failure events as previouslydescribed.

In one embodiment, the logic diagram 200 may determine a mobilecomputing device is moving or stationary at block 204. For example, themotion detector 108 may continuously or periodically monitor the mobilecomputing device 110 to detect any movement. When movement is detected,the motion detector 108 may output a signal to the scan control module105 indicating the movement. Additionally or alternatively, the motiondetector 108 may output a motion parameter for the movement as well.

In one embodiment, the logic diagram 200 may control scanning operationsfor radio signals by a radio in accordance with the determination atblock 206. For example, the scan control module 105 may receive thesignals from the radio module 106 and/or the motion detector 108, andissue various control directives to the radio module 106 to controlscanning operations for the radio module 106. The control directives mayinclude by way of example and not limitation control directives forreducing a scan rate used by the radio module 106 for the scanningoperations, suspending scanning operations by the radio module 106 whilethe mobile computing device 110 remains stationary, scanning for radiosignals 120-1-m when the mobile computing device 110 is moving, scanningfor radio signals 120-1-m when the mobile computing device 110 is movingat a measured speed above a threshold value speed, scanning for radiosignals 120-1-m when the mobile computing device 110 is moving at ameasured velocity above a threshold value velocity, and so forth. Theembodiments are not limited in this context.

FIG. 3A illustrates one embodiment of a logic diagram 300. The logicdiagram 300 may provide an exemplary implementation for reducing orsuspending scanning operations for the radio module 106. As shown inFIG. 3A, the logic diagram 300 may determine whether the radio module106 experiences a communications failure event for a first time periodof x seconds at diamond 302. If the radio module 106 does not experiencea communications failure event for a first time period of x seconds atdiamond 302, then the logic diagram 300 ends. If the radio module 106does experience a communications failure event for a first time periodof x seconds at diamond 302, however, then the logic diagram 300commands the radio module 106 to reduce scanning operations at block304. Continuing with the logic path, the logic diagram 300 thendetermines whether the radio module 106 experiences a communicationsfailure event for a second period of y seconds at diamond 306. If theradio module 106 does not experience a communications failure event fora second period of y seconds at diamond 306, then the logic diagram 300ends. If the radio module 106 experiences a communications failure eventfor a second period of y seconds at diamond 306, however, then the logicdiagram 300 commands the radio module 106 to suspend, terminate or stopscanning operations at block 308.

FIG. 3B illustrates one embodiment of a logic diagram 310. The logicdiagram 310 may provide an exemplary implementation for resumingscanning operations for the radio module 106. As shown in FIG. 3B, thelogic diagram 310 may determine whether motion has been detected atdiamond 312. This may be accomplished using the motion detector 108. Ifmotion is not detected at diamond 312, then the logic diagram 310 ends.If motion is detected at diamond 312, however, the logic diagram 310commands the radio module 106 to resume scanning operations at block314.

In addition to controlling scanning operations for the radio module 106based on motion detection by the motion detector 108, other elements ofthe mobile computing device 110 may be controlled based on suchmovement. Additional logic may be implemented to switch other elementsof the mobile computing device 110 between various power modes based onwhen the mobile computing device 110 is moving or stationary. Forexample, the mobile computing device 110 may reduce or suspend GPSoperations when the mobile computing device 110 is stationary. Inanother example, the mobile computing device 110 may reduce or suspendpower to the entire radio module 106 when the mobile computing device110 is stationary. In yet another example, the mobile computing device110 may reduce or suspend power to the entire mobile computing device110 (e.g., application processor, radio processor, and appropriateinterfaces) when the mobile computing device 110 is stationary. Theembodiments are not limited in this context.

FIG. 4 illustrates a block diagram of a mobile computing device 400suitable for implementing various embodiments, including the mobilecomputing device 100. It may be appreciated that the mobile computingdevice 400 is only one example of a suitable mobile computingenvironment and is not intended to suggest any limitation as to thescope of use or functionality of the embodiments. Neither should themobile computing device 400 be interpreted as having any dependency orrequirement relating to any one or combination of components illustratedin the exemplary mobile computing device 400.

The host processor 402 (e.g., similar to the processor 102) may beresponsible for executing various software programs such as systemprograms and applications programs to provide computing and processingoperations for the mobile computing device 400. The radio processor 404(e.g., similar to the radio processor 124) may be responsible forperforming various voice and data communications operations for themobile computing device 400 such as transmitting and receiving voice anddata information over one or more wireless communications channels.Although the mobile computing device 400 is shown with a dual-processorarchitecture, it may be appreciated that the mobile computing device 400may use any suitable processor architecture and/or any suitable numberof processors in accordance with the described embodiments. In oneembodiment, for example, the processors 402, 404 may be implementedusing a single integrated processor.

The host processor 402 may be implemented as a host central processingunit (CPU) using any suitable processor or logic device, such as a as ageneral purpose processor. The host processor 402 may also beimplemented as a chip multiprocessor (CMP), dedicated processor,embedded processor, media processor, input/output (I/O) processor,co-processor, microprocessor, controller, microcontroller, applicationspecific integrated circuit (ASIC), field programmable gate array(FPGA), programmable logic device (PLD), or other processing device inaccordance with the described embodiments.

As shown, the host processor 402 may be coupled through a memory bus 408to a memory 410. The memory bus 408 may comprise any suitable interfaceand/or bus architecture for allowing the host processor 402 to accessthe memory 410. Although the memory 410 may be shown as being separatefrom the host processor 402 for purposes of illustration, it is worthyto note that in various embodiments some portion or the entire memory410 may be included on the same integrated circuit as the host processor402. Alternatively, some portion or the entire memory 410 may bedisposed on an integrated circuit or other medium (e.g., hard diskdrive) external to the integrated circuit of the host processor 402. Invarious embodiments, the mobile computing device 400 may comprise anexpansion slot to support a multimedia and/or memory card, for example.

The memory 410 may be implemented using any computer-readable mediacapable of storing data such as volatile or non-volatile memory,removable or non-removable memory, erasable or non-erasable memory,writeable or re-writeable memory, and so forth. Examples ofcomputer-readable storage media may include, without limitation,random-access memory (RAM), dynamic RAM (DRAM), Double-Data-Rate DRAM(DDRAM), synchronous DRAM (SDRAM), static RAM (SRAM), read-only memory(ROM), programmable ROM (PROM), erasable programmable ROM (EPROM),electrically erasable programmable ROM (EEPROM), flash memory (e.g., NORor NAND flash memory), content addressable memory (CAM), polymer memory(e.g., ferroelectric polymer memory), phase-change memory, ovonicmemory, ferroelectric memory, silicon-oxide-nitride-oxide-silicon(SONOS) memory, magnetic or optical cards, or any other type of mediasuitable for storing information.

The mobile computing device 400 may comprise an alphanumeric keypad 412coupled to the host processor 402. The keypad 412 may comprise, forexample, a QWERTY key layout and an integrated number dial pad. Themobile computing device 400 also may comprise various keys, buttons, andswitches such as, for example, input keys, preset and programmable hotkeys, left and right action buttons, a navigation button such as amultidirectional navigation button, phone/send and power/end buttons,preset and programmable shortcut buttons, a volume rocker switch, aringer on/off switch having a vibrate mode, and so forth. The keypad 412may comprise a physical keypad using hard buttons, or a virtual keypadusing soft buttons displayed on a display 414.

The mobile computing device 400 may comprise a display 414 coupled tothe host processor 402. The display 414 may comprise any suitable visualinterface for displaying content to a user of the mobile computingdevice 400. In one embodiment, for example, the display 414 may beimplemented by a liquid crystal display (LCD) such as a touch-sensitivecolor (e.g., 46-bit color) thin-film transistor (TFT) LCD screen. Thetouch-sensitive LCD may be used with a stylus and/or a handwritingrecognizer program.

The mobile computing device 400 may comprise a vibrate motor 416 coupledto the host processor 402. The vibrate motor 416 may be enable ordisabled according to the preferences of the user of the mobilecomputing device 400. When enabled, the vibrate motor 416 may cause themobile computing device 400 to move or shake in a generic and/orpatterned fashion in response to a triggering event such as the receiptof a telephone call, text message, an alarm condition, a game condition,and so forth. Vibration may occur for a fixed duration and/orperiodically according to a pulse.

The mobile computing device 400 may comprise an input/output (I/O)interface 418 coupled to the host processor 402. The I/O interface 418may comprise one or more I/O devices such as a serial connection port,an infrared port, integrated Bluetooth wireless capability, and/orintegrated 802.11x (WiFi) wireless capability, to enable wired (e.g.,USB cable) and/or wireless connection to a local computer system, suchas a local personal computer (PC). In various implementations, mobilecomputing device 400 may be arranged to synchronize information with alocal computer system.

The host processor 402 may be coupled to various audio/video (A/V)devices 420 that support A/V capability of the mobile computing device400. Examples of A/V devices 420 may include, for example, a microphone,one or more speakers, an audio port to connect an audio headset, anaudio coder/decoder (codec), an audio player, a Musical InstrumentDigital Interface (MIDI) device, a digital camera, a video camera, avideo codec, a video player, and so forth.

The host processor 402 may be coupled to a power supply 422 arranged tosupply and manage power to the elements of the mobile computing device400. In various embodiments, the power supply 422 may be implemented bya rechargeable battery, such as a removable and rechargeable lithium ionbattery to provide direct current (DC) power, and/or an alternatingcurrent (AC) adapter to draw power from a standard AC main power supply.

The radio processor 404 may be arranged to communicate voice informationand/or data information over one or more assigned frequency bands of awireless communication channel. The radio processor 404 may beimplemented as a communications processor using any suitable processoror logic device, such as a modem processor or baseband processor. Theradio processor 404 may also be implemented as a digital signalprocessor (DSP), media access control (MAC) processor, or any other typeof communications processor in accordance with the describedembodiments. The radio processor 404 may perform analog and/or digitalbaseband operations for the mobile computing device 400. For example,the radio processor 404 may perform digital-to-analog conversion (DAC),analog-to-digital conversion (ADC), modulation, demodulation, encoding,decoding, encryption, decryption, and so forth. The radio processor 404may include a detector 460. The detector 460 may the same or similar tothe detector 126 described with reference to FIG. 1.

The mobile computing device 400 may comprise a memory 424 coupled to theradio processor 404. The memory 424 may be implemented using any of thecomputer-readable media described with reference to the memory 410. Thememory 424 may be typically implemented as flash memory and securedigital (SD) RAM. Although the memory 424 may be shown as being separatefrom the radio processor 404, some or all of the memory 424 may beincluded on the same IC as the radio processor 404.

The mobile computing device 400 may comprise a transceiver module 426coupled to the radio processor 404. The transceiver module 426 maycomprise one or more transceivers arranged to communicate usingdifferent types of protocols, communication ranges, operating powerrequirements, RF sub-bands, information types (e.g., voice or data), usescenarios, applications, and so forth. In various embodiments, thetransceiver module 426 may comprise one or more transceivers arranged tosupport voice communications and/or data communications for the wirelessnetwork systems or protocols as previously described. In someembodiments, the transceiver module 426 may further comprise a GlobalPositioning System (GPS) transceiver to support position determinationand/or location-based services.

The transceiver module 426 generally may be implemented using one ormore chips as desired for a given implementation. Although thetransceiver module 426 may be shown as being separate from and externalto the radio processor 404 for purposes of illustration, it is worthy tonote that in various embodiments some portion or the entire transceivermodule 426 may be included on the same integrated circuit as the radioprocessor 404. The embodiments are not limited in this context.

The mobile computing device 400 may comprise an antenna system 428 fortransmitting and/or receiving electrical signals. As shown, the antennasystem 428 may be coupled to the radio processor 404 through thetransceiver module 426. The antenna system 428 may comprise or beimplemented as one or more internal antennas and/or external antennas.

The mobile computing device 400 may comprise a subscriber identitymodule (SIM) 430 coupled to the radio processor 404. The SIM 430 maycomprise, for example, a removable or non-removable smart card arrangedto encrypt voice and data transmissions and to store user-specific datafor allowing a voice or data communications network to identify andauthenticate the user. The SIM 430 also may store data such as personalsettings specific to the user. In some embodiments, the SIM 430 may beimplemented as an UMTS universal SIM (USIM) card or a CDMA removableuser identity module (RUIM) card. The SIM 430 may comprise a SIMapplication toolkit (STK) 432 comprising a set of programmed commandsfor enabling the SIM 430 to perform various functions. In some cases,the STK 432 may be arranged to enable the SIM 430 to independentlycontrol various aspects of the mobile computing device 400.

As mentioned above, the host processor 402 may be arranged to provideprocessing or computing resources to the mobile computing device 400.For example, the host processor 402 may be responsible for executingvarious software programs including system programs such as operatingsystem (OS) 434 and application programs 436. The OS 434 and theapplication programs 436 may be the same or similar to the applicationmodule 114 described with reference to FIG. 1. System programs generallymay assist in the running of the mobile computing device 400 and may bedirectly responsible for controlling, integrating, and managing theindividual hardware components of the computer system. The OS 434 may beimplemented, for example, as a Palm OS®, Palm OS® Cobalt, Microsoft®Windows OS, Microsoft Windows® CE OS, Microsoft Pocket PC OS, MicrosoftMobile OS, Symbian OS™, Embedix OS, Linux OS, Binary Run-timeEnvironment for Wireless (BREW) OS, JavaOS, a Wireless ApplicationProtocol (WAP) OS, or other suitable OS in accordance with the describedembodiments. The mobile computing device 400 may comprise other systemprograms such as device drivers, programming tools, utility programs,software libraries, application programming interfaces (APIs), and soforth.

Application programs 436 generally may allow a user to accomplish one ormore specific tasks. In various implementations, the applicationprograms 436 may provide one or more graphical user interfaces (GUIs) tocommunicate information between the mobile computing device 400 and auser. In some embodiments, application programs 436 may comprise upperlayer programs running on top of the OS 434 of the host processor 402that operate in conjunction with the functions and protocols of lowerlayers including, for example, a transport layer such as a TransmissionControl Protocol (TCP) layer, a network layer such as an InternetProtocol (IP) layer, and a link layer such as a Point-to-Point (PPP)layer used to translate and format data for communication.

Examples of application programs 436 may include, without limitation,messaging applications, web browsing applications, personal informationmanagement (PIM) applications (e.g., contacts, calendar, scheduling,tasks), word processing applications, spreadsheet applications, databaseapplications, media applications (e.g., video player, audio player,multimedia player, digital camera, video camera, media management),gaming applications, and so forth. Messaging applications may bearranged to communicate various types of messages in a variety offormats. Examples of messaging applications may include withoutlimitation a cellular telephone application, a Voice over InternetProtocol (VoIP) application, a Push-to-Talk (PTT) application, avoicemail application, a facsimile application, a video teleconferencingapplication, an IM application, an e-mail application, an SMSapplication, an MMS application, and so forth. It is also to beappreciated that the mobile computing device 400 may implement othertypes of applications in accordance with the described embodiments.

The host processor 402 may include a scan control module 450. The scancontrol module 450 may the same or similar to the scan control module105 described with reference to FIG. 1. The radio processor 404 mayinclude a CFE detector 460. The CFE detector 460 may be the same orsimilar to the CFE detector 107 described with reference to FIG. 1.

The mobile computing device 400 may include various databasesimplemented in the memory 410. For example, the mobile computing device400 may include a message content database 438, a message log database440, a contacts database 442, a media database 444, a preferencesdatabase 446, and so forth. The message content database 438 may bearranged to store content and attachments (e.g., media objects) forvarious types of messages sent and received by one or more messagingapplications. The message log 440 may be arranged to track various typesof messages which are sent and received by one or more messagingapplications. The contacts database 442 may be arranged to store contactrecords for individuals or entities specified by the user of the mobilecomputing device 400. The media database 444 may be arranged to storevarious types of media content such as image information, audioinformation, video information, and/or other data. The preferencesdatabase 446 may be arranged to store various settings such as rules andparameters for controlling the operation of the mobile computing device400.

In some cases, various embodiments may be implemented as an article ofmanufacture. The article of manufacture may include a storage mediumarranged to store logic and/or data for performing various operations ofone or more embodiments. Examples of storage media may include, withoutlimitation, those examples as previously described. In variousembodiments, for example, the article of manufacture may comprise amagnetic disk, optical disk, flash memory or firmware containingcomputer program instructions suitable for execution by a generalpurpose processor or application specific processor. The embodiments,however, are not limited in this context.

Various embodiments may be implemented using hardware elements, softwareelements, or a combination of both. Examples of hardware elements mayinclude any of the examples as previously provided for a logic device,and further including microprocessors, circuits, circuit elements (e.g.,transistors, resistors, capacitors, inductors, and so forth), integratedcircuits, logic gates, registers, semiconductor device, chips,microchips, chip sets, and so forth. Examples of software elements mayinclude software components, programs, applications, computer programs,application programs, system programs, machine programs, operatingsystem software, middleware, firmware, software modules, routines,subroutines, functions, methods, procedures, software interfaces,application program interfaces (API), instruction sets, computing code,computer code, code segments, computer code segments, words, values,symbols, or any combination thereof Determining whether an embodiment isimplemented using hardware elements and/or software elements may vary inaccordance with any number of factors, such as desired computationalrate, power levels, heat tolerances, processing cycle budget, input datarates, output data rates, memory resources, data bus speeds and otherdesign or performance constraints, as desired for a givenimplementation.

Some embodiments may be described using the expression “coupled” and“connected” along with their derivatives. These terms are notnecessarily intended as synonyms for each other. For example, someembodiments may be described using the terms “connected” and/or“coupled” to indicate that two or more elements are in direct physicalor electrical contact with each other. The term “coupled,” however, mayalso mean that two or more elements are not in direct contact with eachother, but yet still co-operate or interact with each other.

It is emphasized that the Abstract of the Disclosure is provided tocomply with 37 C.F.R. Section 1.72(b), requiring an abstract that willallow the reader to quickly ascertain the nature of the technicaldisclosure. It is submitted with the understanding that it will not beused to interpret or limit the scope or meaning of the claims. Inaddition, in the foregoing Detailed Description, it can be seen thatvarious features are grouped together in a single embodiment for thepurpose of streamlining the disclosure. This method of disclosure is notto be interpreted as reflecting an intention that the claimedembodiments require more features than are expressly recited in eachclaim. Rather, as the following claims reflect, inventive subject matterlies in less than all features of a single disclosed embodiment. Thusthe following claims are hereby incorporated into the DetailedDescription, with each claim standing on its own as a separateembodiment. In the appended claims, the terms “including” and “in which”are used as the plain-English equivalents of the respective terms“comprising” and “wherein,” respectively. Moreover, the terms “first,”“second,” “third,” and so forth, are used merely as labels, and are notintended to impose numerical requirements on their objects.

Although the subject matter has been described in language specific tostructural features and/or methodological acts, it is to be understoodthat the subject matter defined in the appended claims is notnecessarily limited to the specific features or acts described above.Rather, the specific features and acts described above are disclosed asexample forms of implementing the claims.

1. A mobile computing device, comprising: a radio module having acommunications failure event detector operative to detect acommunications failure event; a motion detector operative to detectmotion; and a processor coupled to the radio module and the motiondetector, the processor operative to execute a scan control module todetermine the mobile computing device is moving or stationary, andcontrol scanning operations by the radio module in accordance with thedetermination.
 2. The mobile computing device of claim 1, thecommunications failure event comprising a received signal strengthindication failure event, a timeout event, an acquisition failure event,or a decoding error event.
 3. The mobile computing device of claim 1,the scan control module to determine the mobile computing device isstationary for a first time period, and reduce a scan rate used by theradio module for the scanning operations.
 4. The mobile computing deviceof claim 1, the scan control module to determine the mobile computingdevice is stationary for a first time period, and reduce a scan rateused by the radio module for the scanning operations to reduce powerconsumption from a power supply for the mobile computing device.
 5. Themobile computing device of claim 1, the scan control module to determinethe mobile computing device is stationary for a second time period, andsuspend scanning operations by the radio module.
 6. The mobile computingdevice of claim 1, the scan control module to determine the mobilecomputing device is stationary for a second time period, and suspendscanning operations by the radio module while the mobile computingdevice remains stationary.
 7. The mobile computing device of claim 1,the scan control module to determine the mobile computing device isstationary for a second time period, and suspend scanning operations bythe radio module to reduce power consumption from a power supply for themobile computing device.
 8. The mobile computing device of claim 1, thescan control module to send a control directive to the radio module toresume scanning for radio signals when the mobile computing device ismoving.
 9. The mobile computing device of claim 1, the scan controlmodule to send a control directive to the radio module to resumescanning for radio signals when the mobile computing device is moving ata measured speed above a threshold value speed.
 10. The mobile computingdevice of claim 1, the motion detector comprising an accelerometer, agyroscope, a global positioning system, a network enhanced globalpositioning system, a base station proximity system, a triangulationsystem, a time difference system, a camera or a proximity sensor.
 11. Amethod, comprising: detecting a communications failure event;determining a mobile computing device is moving or stationary; andcontrolling scanning operations for radio signals by a radio module inaccordance with the determination.
 12. The method of claim 11,comprising: determining the mobile computing device is stationary for afirst time period; and reducing a scan rate used by the radio module forthe scanning operations.
 13. The method of claim 11, comprising:determining the mobile computing device is stationary for a second timeperiod; and suspending scanning operations by the radio module while themobile computing device remains stationary.
 14. The method of claim 11,comprising scanning for radio signals when the mobile computing deviceis moving.
 15. The method of claim 11, comprising scanning for radiosignals when the mobile computing device is moving at a measured speedabove a threshold value speed.
 16. An article comprising acomputer-readable storage medium containing instructions that ifexecuted enable a system to: detect a communications failure event;determine a mobile computing device is moving or stationary; and controlscanning operations for radio signals by a radio module in accordancewith the determination.
 17. The article of claim 16, further comprisinginstructions to: determine the mobile computing device is stationary fora first time period; and reduce a scan rate used by the radio module forthe scanning operations.
 18. The article of claim 16, further comprisinginstructions to: determine the mobile computing device is stationary fora second time period; and suspend scanning operations by the radiomodule while the mobile computing device remains stationary.
 19. Thearticle of claim 16, further comprising instructions to scan for radiosignals when the mobile computing device is moving.
 20. The article ofclaim 16, further comprising instructions to scan for radio signals whenthe mobile computing device is moving at a measured velocity above athreshold value velocity.